/*LICENSE_BEGIN
 * ******************************************************************
 * All original parts of SoccerScope2003 have copyright (2003) by
 * Team YowAI, represented by Mr. Shuhei Shiota
 * The Department of Creative Informatics
 * The Graduate School of Information Science and Technology
 * The University of Tokyo
 * 
 * Additional classes (except libraries in /lib) were developed by 
 * the Dainamite Robocup-Team of the DAI-Labor, TU-Berlin 
 * (www.dai-labor.de)
 * 
 * Extended/new classes/packages are:
 *   soccerscope.analyzer.LogfileAnalyzer
 *   soccerscope.daistatistic.*
 *   soccerscope.daistatistic.charts.*
 *   soccerscope.daistatistic.tools.*
 *   soccerscope.db.*
 *   soccerscope.dialog.*
 *   soccerscope.model.PlayerWorldModel
 *   soccerscope.model.SimplePlayer
 *   soccerscope.net.AgentConnector
 *   soccerscope.training.*
 *   soccerscope.training.conditions.*
 * ******************************************************************
LICENSE_END*/
package soccerscope.util.analyze;

import soccerscope.model.ClientScene;
import soccerscope.model.GameEvent;
import soccerscope.model.PlayMode;

public class GoalieCatchAnalyzer extends SceneAnalyzer {

	public static String NAME = "Goalie Catch";

	@Override
	public String getName() {
		return NAME;
	}

	@Override
	public GameEvent analyze(ClientScene clientScene, ClientScene prev) {
		GameEvent ge = null;
		if (prev != null && clientScene.isGoalieCatching()) {
			if (isPlayModeChanged(clientScene, prev, PlayMode.PM_FreeKick_Left)) {
				countUpLeft(clientScene.time);
				ge = new GameEvent(clientScene.time, GameEvent.GOALIE_CATCH);
			}
			if (isPlayModeChanged(clientScene, prev, PlayMode.PM_FreeKick_Right)) {
				countUpRight(clientScene.time);
				ge = new GameEvent(clientScene.time, GameEvent.GOALIE_CATCH);
			}
		}
		return ge;
	}
}
